Too much milk problem

최근 수정 시각: (5년 전)
목차
1. 개요2. 설명3. 해결책
3.1. 관련 문서

1. 개요 [편집]

Too much milk problem

운영체제가 오랫동안 작업할 경우 발생할 수 있는 문제. 다중CPU 관련. 동시에 발생한 작업 사이에 동기화가 제대로 안 됐을 경우 어떤 문제가 발생하는지 보여준다.

2. 설명 [편집]

1. 철수가 냉장고를 열어보니 우유가 없다. 철수가 우유를 사러 간다.
2. 영희가 냉장고를 열어보니 우유가 없다. 영희가 우유를 사러 간다.
3. 철수가 우유를 사온다.
4. 영희가 우유를 사온다.
5. 이제 우유가 너무 많다.

3. 해결책 [편집]

Leave NoteA;
if (NoNoteB) {
if (NoMilk) {
Buy Milk;
}
} else {
while (NoteB) {
DoNothing;
}
if (NoMilk) {
Buy Milk;
}
}
Remove NoteA;

우유를 사러 가는 프로세스와 함께 메모를 남기는 것/우유와 메모가 함께 없으면 우유를 사러 가는 것으로 방지할 수 있다. 그러나 골치 아프게도 여러 문제가 발생하는데,

3.1. 관련 문서 [편집]


라이선스를 별도로 명시하지 않은 문서는 CC BY-NC-SA 2.0 KR에 따라 이용할 수 있습니다.
기여하신 문서의 저작권은 각 기여자에게 있으며, 각 기여자는 기여하신 부분의 저작권을 갖습니다.

문서의 기여자는 역사 탭에서 확인할 수 있습니다.
접두어의 N: - 나무위키 사용자, R: - 리그베다 위키의 사용자를 뜻합니다.
자세한 사항은 나무위키에서 동일한 문서의 역사를 참고하시기 바랍니다.